Methods and systems for improving athletic performance by tracking objects hit or thrown at an electronic display

ABSTRACT

The present disclosure relates to effective, efficient, and economical methods and systems for improving athletic performance by tracking objects typically thrown or hit by athletes. In particular, the present disclosure relates to a unique configuration of technology wherein an electronic display is located at or behind the target and one or more cameras are positioned to observe the target. Once an object is thrown or hit, one or more cameras may observe and track the object. Further, an electronic display may be used to provide targeting information to an athlete and also to determine the athlete&#39;s accuracy.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part of U.S. patent application Ser. No. 16/292,287, filed on Mar. 4, 2019, which is a continuation-in-part of U.S. patent application Ser. No. 15/396,642, filed on Dec. 31, 2016 and issued as U.S. Pat. No. 10,220,256 on Mar. 5, 2019, which claims the benefit of U.S. Provisional Patent Application Ser. No. 62/376,332, filed on Aug. 17, 2016, the entireties of which are hereby incorporated herein by reference.

BACKGROUND Field of the Invention

The present disclosure relates to methods and systems for improving athletic performance by tracking objects typically thrown or hit by athletes.

Description of the Related Art

Many sports require that an athlete repeatedly throw or hit an object to a target with a specific accuracy. For example, baseball requires that pitchers throw a baseball within a strike zone above a home plate. Further, a good pitcher in baseball should be able to throw a baseball to a specific area within the strike zone (e.g., lower right corner of the strike zone) that is optimal for striking out a player. Other sports besides baseball also have similar goals. For example, a good hockey player will be skilled at not just placing a puck in a goal, but also in targeting the puck to a specific area within the goal.

Currently, athletic training products on the market consist of static displays that only provide athletes with a fixed template to aim at, such as a vertical static display with colored grids showing different areas that the athlete can target. Rarely do such displays incorporate any form of feedback, though there are some products that measure speed of a thrown object using radar. However, these products do not provide a targeting system that can be easily adjusted, nor do they allow for electronically tracking and analyzing an athlete's performance. As a result, these training aids are highly limited in the feedback they can provide to athletes, coaches, parents, or others in understanding an athlete's individual performance. Further, they do not allow for easily comparing performance across athletes or according to factors deemed relevant to an athlete's performance, such as age or environmental conditions.

SUMMARY

The present disclosure is related to effective, efficient, and economical methods and systems for improving athletic performance by tracking objects typically thrown or hit by athletes. In particular, the present disclosure relates to a unique configuration of technology wherein an electronic display is located at or behind the target and one or more cameras are positioned to observe the target. Once an object is thrown or hit, one or more cameras may observe and track the Object. Further, an electronic display may be used to provide targeting information to an athlete and also to determine the athlete's accuracy.

An example of a system for monitoring objects thrown or hit by an athlete is described herein. The system may comprise an electronic display, wherein the electronic display contains an arrangement of light-emitting devices for displaying targets to the, athlete; one or more cameras, wherein at least one camera is positioned to observe the electronic display; and a computer coupled to the electronic display and the one or more cameras, wherein the computer uses video from the one or more cameras to determine relative to the electronic display where an object is thrown or hit.

A computer operable method is described for monitoring objects thrown or hit by an athlete. The method may comprise observing an electronic display, wherein the electronic display contains an arrangement of light-emitting devices for displaying targets to the athlete, via one or more cameras, wherein at least one camera is positioned to observe the electronic display; and using video from the one or more cameras to determine relative to the electronic display where an object is thrown or hit.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example of a system for tracking objects.

FIG. 2 illustrates another example of a system for tracking objects.

FIG. 3 illustrates another example of a system tracking objects.

FIG. 4 illustrates an example of a custom target display.

FIG. 5 illustrates an example of a system configuration.

FIG. 6 illustrates an example of a user record.

FIG. 7 illustrates an example of a method for controlling a target display using a computer.

FIG. 8 illustrates a method for entering a user profile.

FIG. 9 illustrates an example of a method for calculating parameters relating to an object in motion.

FIG. 10 illustrates an example of a method for processing an event or a series of events.

FIG. 11 illustrates an example of a method for comparing players according to their user records.

FIG. 12 illustrates an example of the network functionality of the system.

FIG. 13 illustrates an example of a target display.

FIG. 14 illustrates another example of a target display.

FIG. 15 illustrates an example of target data.

FIG. 16 illustrates another example of target data.

FIG. 17 illustrates another example of target data.

FIG. 18 illustrates, an example of multiple user records.

FIG. 19 illustrates another example of multiple user records.

FIG. 20 illustrates an example of performance/analytics information for a particular user.

FIG. 21 illustrates another example of performance/analytics information for a particular user.

FIG. 22 illustrates another example of performance/analytics information for a particular user.

FIG. 23 illustrates an example of how a target data template may be constructed to form a game mode.

FIG. 24 illustrates another example of how a target data template may be constructed to form a game mode.

FIG. 25 illustrates another example of a system for tracking objects.

FIG. 26 illustrates a method of observing a thrown object.

FIG. 27 illustrates another method of observing a thrown object.

FIG. 28 illustrates a method for encouraging deception in pitching.

FIG. 29 illustrates an example of a chart showing balls and strikes.

FIG. 30 illustrates an example of a chart showing successes and misses.

FIG. 31 illustrates an example of a chart showing executed and not executed.

FIG. 32 illustrates an example of a chart showing pitches categorized by Curve Ball.

FIG. 33 illustrates an example of a chart showing pitches categorized by Fast Ball.

FIG. 34 illustrates an example of a chart showing the difference in speed between two pitches and the distance that the slower pitch would be behind the faster pitch when the faster pitch arrived at the target location.

FIG. 35 illustrates an example of a chart showing the difference in vertical, horizontal, and diagonal height between two pitches.

DETAILED DESCRIPTION OF ILLUSTRATED EMBODIMENTS

Although the invention will be described in connection with certain preferred embodiments, it should be understood that the invention is not limited to those particular embodiments. On the contrary, the invention is intended, to cover all alternatives, modifications, and equivalent arrangements as may be included within the spirit and scope of the invention as defined by the appended claims.

With respect to FIG. 1 , an example of a System 100 for tracking objects is shown. In this embodiment, an Athlete 102 may be pitching from a baseball mound in the direction of Home Plate 106. Located behind Home Plate 106 may be a Catching Net 108, which may catch any pitch thrown near Home Plate 106. Located further behind Catching Net 108 may be a Target Display 110, which may display locations for the pitcher to throw at as described below. Between Athlete 102 and Target Display 110 may be Camera 104, which may be located on or near the line between a pitching mound and Home Plate 106 and may be oriented to observe target Display 110. In addition, a Camera 112 may be placed to the side or at another position to observe the trajectory of a ball thrown by Athlete 102.

System 100 may also include a Computer 114, which may be connected to Camera 104, Target Display 110, and Camera 112, Computer 114 may instruct Target Display 110 to display a target showing areas that Athlete 102 should throw at. Computer 114 may then observe the performance of the athlete by tracking an object thrown toward Target Display 110, such as a baseball, via Camera 104. Based on the trajectory of the thrown object as recorded via Camera 104 or Camera 112, Computer 114 may determine a termination point where the trajectory of the object changes abruptly. Further, Computer 114 may determine the location of the termination point relative to visually distinct areas presented by Target Display 110. This may then be recorded into a data array by Computer 114, thereby allowing for the tracking of where objects have been repeatedly thrown by the athlete.

In some embodiments, one or more Cameras 116 may be added to the arrangement shown in FIG. 1 to record the appearance or trajectory of the object from different perspectives. For example, Cameras 116 may be placed in a position to show the perspective of a right-handed hatter or left-handed batter, a right-handed goalie or a left-handed goalie, different positions within a soccer net, etc. In some embodiments, Cameras 116 may be integrated into Target Display 110, such as where the target display is sufficiently large enough to cover a set of desired perspectives (e.g., those of a right-handed batter or left-handed batter). For example, Cameras 116 may be embedded into the structure of Target Display 110. As another example, Cameras 116 may be attached via fixtures, such as by brackets or flexible mounts, to Target Display 110. Where Cameras 116 are included, Computer 114 may then pair the additional data provided by Cameras 116 with the data obtained by Cameras 104 and 112. For example, data for Cameras 104 and 112 may be used to show the rise and fall of a pitch along with where it hits, while data from Cameras 116 may show how the same pitch appears to a right or left-handed batter.

With respect to FIG. 2 , an example of a System 200 for tracking objects is shown. System 200 may be comprised of a Personal Computer 202, a Target Display 204, and a Camera 206, System 200 is an example of a basic implementation of the systems described herein, which can be implemented using components described in FIG. 1 . One of ordinary skill in the art will understand that, with respect to the hardware, custom or off-the-shelf components may be utilized. For example, Computer 200 may be a standard desktop or laptop running Windows, MacOS, Linux, etc. As a further example, Target Display 204 may comprise a standard television display, a screen on which images are projected from a video projector, or a custom arrangement as described below. As yet another example, Camera 206 may utilize any camera that has sufficient field of view and resolution to observe objects that are to be tracked and to observe visually distinct areas presented by Target Display 204.

With respect to FIG. 3 , an example of a System 300 for tracking objects is shown. System 300 may include a Personal Computer 302. Personal Computer 302 may be connected to a Network 306 for exchanging data via network communications. Network 306 may be any type of computer network, such as the Internet, or other data communication network, such as a Bluetooth, Cellular, ZigBee, etc., that facilitates the exchange of electronic information. Via Network 306, Personal Computer may be able to upload or download data to or from Server 304 as described below. In addition, Network 306 may also facilitate the exchange of information between Personal Computer 302 or Server 304 with Tablet/Phone 308, Second Personal Computer 310, or Second Server 312. Personal Computer 302 may perform the same functions as Computer 114.

With respect to FIG. 4 , an example of a custom Target Display 400 is shown. Target Display 400 may consist of a Mounting Platform 402 attached to which is one or more Display Modules 404. For example. Mounting Platform 402 may consist of a rubber mat suspended vertically from a metal frame (or as another example it may be a metal frame constructed in the form of a grid-like vertical structure). Further, a 16×24 array of Display Modules 404 may be placed on Mounting Platform 402 as shown in FIG. 400 . In other embodiments, various other size arrays (e.g., 24×24, 48×96) or other arrangements (e.g., circular, elliptical) may be employed. The one or more Display Modules 404 may then be connected to Display Component 406, which may allow Display Component 406 to control the state of each of Display Modules 404. In some embodiments, Display Modules 404 may be connected in sets to Display Component 406, which may allow Display Component 406 to control the state of each set of Display Modules 404.

With respect to FIG. 5 , an example of System Configuration 500 is shown. System Information 502 may be used to store general information needed to configure the software components of the system, such as boot up parameters, location of essential files, etc. Camera Configuration 504 may be used to store information relating to initializing, configuring, and operating cameras attached to the system, such as Camera 104 shown in FIG. 1 . Display Configuration 506 may be used to store information relating to initializing, configuring, and operating target displays attached to the system, such as Target Display 110. For example, Target Display Templates 508 may be created containing instructions of what is to be displayed on a Target Display 110. A Target Display Template 508 may specify a model number of a target Display 400 and instructions for operating Display Modules 404 according to that model number. In some embodiments, a Target Display Template 508 may only contain patterns, which the system then interprets to fit a Target Display 110. For example, a Target Display Template 508 may contain an image, which the system may then interpolate, extrapolate, or otherwise adjust to operate within the display parameters of a specific Target Display 110. In addition, Display Configuration 506 may be used to store information relating to the display of information by the system on a computer display, such as the display of Computer 114, Network Configuration 510 may be used to store information relating to initializing, configuring, and operating network connections within the system, such as what entities (e.g., Personal Computer 302, Server 304, Tablet/Phone 308, Second Personal Computer 310, Second Server 312, etc.) can access information on the system.

With respect to FIG. 6 , an example of a User Record 600 is shown. A User Record 600 may contain Personal Information 602 relating to a user, such as a user's name, nickname, mailing address, email address, age, gender, phone number, etc. User Record 600 may also contain Status/Relationship Information 604 relating to a user, such as specifying whether a user is an athlete, as coach, a parent/guardian, and may further contain relationship data to manage access between user records as described below.

User Record 600 may also contain Performance/Analytics Information 606, such as Target Data 608 corresponding to Target Display Templates 508. For example, an area around each Display Module 404 may be defined as a bin within a data array contained in Target Data 608. Each time that Computer 114 determines that an object hits within the area within a specific Display Module 404, it may update the bin within the data array of Target Data 608 associated with said area. In some embodiments, a bin within the data array of Target Data 608 may cover two or more Display Modules 404.

Target Data 608 may contain multiple arrays associated with Target Display 110. For example, a data array may only represent a particular range of time (e.g., corresponding to a practice session) or a data array may be the sum of other multiple data arrays. In addition, data arrays may contain addition information indicating the environment or other characteristics relevant to the data. For example, a pitching session may involve different targets displayed on Target Display 110, different weather conditions between sessions, different pitching stances, different lighting conditions (e.g., daylight vs. electric light), different geographic locations, etc. Accordingly, a data array contained in Target Data 608 may include any such information (e.g., athletic, environmental, geographic, or other factors) that is relevant to one or more object throwing or hitting sessions. In addition, once a data array is created in Target Data 608, it may be used as a template for other users. In some embodiments, a user may select to share such a data array with other users, while in other embodiments the system may determine what aspects of a data array in Target Data 608 may be shared.

In some embodiments, Performance/Analytics Information 606 may also contain, for each throwing or hitting of an object, one cor more videos captured by Camera 104, Camera 112, Cameras 116, or a combination thereof.

With respect to FIG. 7 , an example of a method 700 for controlling a Target Display 110 using a Computer 114 is shown. In Step 702, a Computer 114 may receive information specifying the capabilities of Target Display 110. For example, a model number specifying the capabilities of Target Display 110 may be selected by a user. Alternatively, Target Display 110 may provide such information (e.g., a model number or parameters) to Computer 114 upon connection of Target Display 110 to Computer 114. The Connection of Target Display 110 to Computer 114 may occur by wired or wireless communication. For example, Target Display 110 may use Wi-Fi, Bluetooth, or other protocols to communicate with Computer 114. Alternatively, well known wired methods such as Ethernet cables may be employed. In some instances, intermediate network devices, such as routers and hubs, may also be employed to connect Target Display 110 to Computer 114.

At Step 704, Computer 114 may instruct Target Display 110 to perform a self-test. For example, Target Display may methodically display a variety of different patterns to determine that all of its Display Modules 404 are functioning according to the expected capability of Target Display 110. As part of the self-test, Computer 114 may utilize a camera, such as Camera 104, to observe the self-test. For example, by observing the self-test via Camera 104, Computer 114 may confirm that all Display Modules 404 of the Target Display 110 are functioning properly and can be observed by Computer 114 via Camera 104.

At Step 706, the results of the self-test may be displayed to the user. If the self-test indicates a potential problem, it may provide instructions to the user. For example, Computer 114 may determine via the self-test that Camera 104 is too close to Target Display 110 and instruct the user to move Camera 104 or Target Display 110 further apart. As another example, Computer 114 may inform the user of a failure via the self-test to observe particular Display Modules 404 functioning properly and then may instruct the user to cheek for obstructions between Camera 104 and Target Display 110 that are blocking Camera 104 from observing said Display Modules 404.

At Step 708, Computer 114 may send display information to Target Display 110. For example, display information may specify the intensity and color that each Display Module 404 should exhibit. In some embodiments, the display information may contain fluffier information relating to time-ordered sequences one or more Display Modules 404 should follow, thereby allowing for animated displays by Target Display 110. Particular examples of display information that may be shown by Target Display 110 are described below. In some embodiments, the display information may be obtained from Target Display Templates 510, in other embodiments, the display information may be obtained from Target Data 608.

At step 710, Computer 114 may send instructions to Target Display 110 to enter a standby mode or turn off. For example, Computer 114 may determine based on information received from a camera, such as Camera 104, that no objects have been thrown or hit for 15 minutes and send instructions to Target Display 110 to enter a standby mode. In some embodiments, Computer 114 may determine based on information received from a camera, such as Camera 104, that an object has been thrown or hit while Target Display 110 is in a standby mode and instruct Target Display 110 to leave standby mode. For example, Computer 114 via Camera 104 may observe a baseball entering its field of view and terminating on a net in from of Target Display 110.

With respect to FIG. 8 , a method 800 is shown for entering a user profile. At step 802, a user may enter Personal information 602 into a User Record 600. At step 804, a user may enter Status/Relationship Information 604 into a User Record 600. For example, the user may specify that he or she is an athlete, coach, or parent. In addition, the user may also include information relating to characteristics of his or her status or relationship to other users. For example, if the user is an athlete, the user may specify the type of sport he or she plays, the position(s) he or she typically plays, whether he or she is right-handed or left-handed, and other athletic characteristics relevant to his or her status as an athlete. As another example, if the user is a coach, the user may specify the type of sport(s) he or she coaches, his or her title (e.g., assistant coach), and any particular expertise (e.g., pitching trainer).

In addition, users may specify relationships between each other. For example, a user may designate himself or herself as a coach to a set of users that are athletes, as a parent or guardian to a particular user, or as belonging to one or more organizations. In specifying such relationships, a user may be able to access information contained in User Records 600 based on such relationships. For example, a user who is a coach may be able to review the User Records 600 of users that are designated as athletes under the coach's supervision. The permissions to access such records based on relationships defined by users may be set by users themselves, a particular group of users having a specific status, by the system automatically, or a combination thereof.

At Step 806, a user may review Performance/Analytics Information 606 contained in a User Record 600. For example, a user may see how many balls were thrown on target and an index rating the performance of the athlete as a user. Further details about the Performance/Analytics Information 606 are provided below. In some embodiments, a user may also be able to edit the Performance/Analytics Information 606 contained in a User Record 600, such as instructing the record be reset or that analytics should ignore certain information, or to correct erroneous information stored by the system.

With respect to FIG. 9 , an example of a method 900 for calculating parameters relating to an object in motion is shown. At Step 902, Computer 114 may determine via one or more cameras, such as Camera 104, that an object is in motion. For example, Computer 114 may be instructed to look for a particular object in motion, such as, a baseball, and upon observing said object entering the field of view of one or more cameras determine that an event, such as the pitching of a baseball may have occurred. Computer 114 may be instructed to observe for a wide variety of objects, such as baseballs, hockey pucks, footballs, soccer bails, etc. based on the expected way such an object will appear on a video screen (for example, a white round object of an initial size). In some embodiments, Computer 114 may determine the optimum parameters for detecting such an object based on an initialization routine (e.g., several baseballs are thrown and the system determines the best parameters identifying said object). In other embodiments, the system may attempt to track any object and may further determine if it is a valid object based on its trajectory.

At Step 904, Computer 114 may determine via one or more cameras the trajectory of the object. For example, based on each camera it may determine frame-by-frame the location of the object, and then create an array showing the position of the object over a period of time. In some embodiments, this array may then be superimposed over the display from each camera on Computer 114. In addition, when two or more cameras are used, Computer 114 may calculate a three-dimensional approximation of the trajectory of the object. This may then by displayed using methods known in the a the user as a three-dimensional object on Computer 114 for manipulation by the user (e.g., rotating the 3D view).

At Step 906, Computer 114 may determine where an object hit. For example, it may determine based on the trajectory information calculated in step 904 where an object changed direction to denote a termination point. In addition, Computer 114 may then determine based on the termination point what is the closest Display Module 404 of a Target Display and use that to update a bin in a data array of Target Data 608. In some embodiments, the Target Display may show a visually distinct area based on color or intensity of a region. In such embodiments, Computer 114 may then determine based on the termination point what is the appropriate visually distinct area of the target Display in which it resides.

At Step 908, Computer 114 may determine the rotation of the object. For example, an object may be marked with indicators allowing for one or more cameras to observe the rotation of the object. For example, a football may be painted half white and half orange and when the ball is thrown, Computer 114 may determine based on analysis of video recordings from one or more cameras the manner in which the object rotated (e.g., when the object goes from predominately white to orange and back again in a video feed from a side camera, Computer 114 may determine that this constitutes one rotation). In some embodiments, the markings may only be observable is spectrum not visible to the human eye, such as by using an infrared camera.

At step 910, Computer 114 may determine the speed of the object. For example, a user may specify the distance that the camera is located from a target. Based on that parameter and the known position and field of view of a camera relative to the target, Computer 114 may determine a distance between when an object enters the field of view and the target. Consequently, Computer 114 may calculate the speed of the object based on the number of video frames it takes for an object from entering the field of view of a camera to hit a target. As another example, when two or more cameras are used (such as a camera placed orthogonally to the trajectory of the object), Computer 114 may calculate the speed of the object based on trajectory information calculated in step 904. In some embodiments, markings in a physical environment may also be used to determine the speed of an object. For example, an overhead camera located above and in front of a target may observe the transition of an object over markings in the floor, thereby allowing for calculation of the object's speed based on such markings and the number of video frames required for the transition.

With respect to FIG. 10 , an example of a method 1000 for processing an event or a series of events is shown. At step 1002, a Computer 114 may receive a User Record, such as a record associated with an athlete who is a baseball pitcher. At step 1004, a Computer 114 may select a Target Display Template for use with a Target Display 110. In some embodiments, the Target Display template may be retrieved from the User Record itself, while in other embodiments the Target Display Template may be selected from Display Configuration 506. Based on the Target Display Template, Computer 114 may then proceed with the steps described in method 700 to set up a Target Display.

At step 1006, Computer 114 may receive information regarding an event recorded by cameras observing a thrown object, such as the throwing of an object at a target as described in method 900. For example, the athlete associated with the record may throw a baseball at the Target Display located behind a net, which may lead Computer 114 to receive information regarding the trajectory, rotation, speed, and hit location of the pitch.

At step 1008, Computer 114 may also receive information regarding environmental factors, such as light intensity, time of day, weather conditions, wind speed, location, etc. that a user has selected as relevant to the event recorded by cameras observing a thrown object.

At step 1010, Computer 114 may update the user record to include the information received in steps 1006 or 1008.

The above steps of method 1000 may be performed repeatedly for each object thrown or hit at the Target Display, thereby allowing for a cumulative record of performance to be recorded in a data array of Target Data 608 within the User Record.

With respect to FIG. 11 , an example of a method 1100 for comparing players according to their User Records is shown. At step 1102, a selection of a Player may be made for comparison, such as choosing a User Record via Computer 114. At step 1104, parameters may be chosen to determine how the comparison should be performed. For example, a comparison may be selected on the basis of age, throwing style, school, or other demographic, geographic, or athletic factors of interest. At step 1106, the comparison may be performed as requested. For example, Computer 114 may, determine for each user record how they compare relative with respect to Target Display Templates that both users have utilized. At step 1108, the comparison may be displayed, such as on Computer 114.

In some embodiments, method 1100 may also be used fir comparing events within a player's record. For example, at step 1102, a selection of a Player may be made, such as choosing a User Record via Computer 114. At step 1102, a selection of two or more events in a User Record may be made for comparison, such as choosing an event number (e.g., pitch number three and five) or an event type (e.g., pitches that are fastballs). At step 1106, the comparison may be performed as requested. For example, if pitch number three is a fastball, pitch number five is a changeup, and both were selected for comparison, videos associated with each pitch may be selected for side by side display. In addition, tracking information for each pitch, such as pitch height or other geometric analysis of the object's trajectory, distance from intended target, or other metrics recorded with the event, may be selected for display together or side-by-side. At step 1108, the comparison may be displayed, such as on Computer 114.

While examples of the system herein are primarily described with respect to Computer 114, the functionality of Computer 114 may be implemented by other components, such as Server 304, Tablet/Phone 308, Second Personal Computer 310, or Second Server 312 In some embodiments, the functionality may be distributed across several such components or may be performed by a cloud-computing environment.

With respect to FIG. 12 , an example of the network functionality of the system is described. To help illustrate this example, Personal Computer 302 may be a computer being used to operate the system on a baseball field, Server 304 is a server coupled to maintain a copy of the records on Personal Computer 302 that may have a more reliable Internet connection, and Tablet/Phone 308, Second Personal Computer 310, and Second Server 312 are in the possession of third-parties.

At step 1202, a request may be made to share a user record, such as a parent/guardian using his or her Tablet/Phone 308 to check on the performance of an athlete. As another example, a Little League may wish to gather comprehensive records of pitching performance for statistical evaluation using Second Server 312. Further, after performing such statistical evaluation, Second Server 312 may share its results with the system so as to enhance the system's performance/analytics information. For instance, rankings may be established based on the collected, athletic performance that may then be incorporated by the system when analyzing an athlete's performance (e.g., a hit/miss ratio of 25% is a “Greenhorn”, while a hit/miss ratio of 52% is a “Marksman”). In such embodiments, the system or a particular user may determine whether the person or device is authorized to access such records and also what information may be shared.

At step 1204, a request may be made to share only performance/analytics information. For example, this may be used in embodiments where access to an other portion of a user record is prohibited by child privacy laws or regulations. In such embodiments, the system or a particular user may determine whether the person or device is authorized to access such records and also What information may be shared.

At step 1206, a request may be made to share Target Data Templates. For example, coaches or instructors may wish to share Target Data Templates they have created with other coaches or instructors. Alternatively, users may wish to download Target Data Templates representing particular players they wish to compete against. For example, a user may wish to download Target Data Templates corresponding to a professional athletic team and simulate a game against them in Game Mode as described below. In such embodiments, the system or a particular user may determine whether the person or device is authorized to access such records and also what information may be shared.

At step 1208, a request may be made to Third Party services for information to include in User Records. For example, a request may be made for weather data, location data, etc. to include in a Target Data Record.

At step 1210, the system may be used to share information with social media. For example, the system may be configured to generate messages regarding athletic performance for social media (e.g., “Many pitched like a Marksman in today's session!”). Templates for messages may be stored in System information 502. Rules for determining how or when to generate such messages may be stored in System Information 502 or in individual User Records. In some embodiments, a user may use such templates and rules to generate and post such messages. In further embodiments, the system may use such templates and rules to generate and post such messages automatically.

With respect to FIG. 13 , an example of a Target Display is shown. In this embodiment, LEDs are suspended on a vertical metal frame. The metal frame is composed of four sections, allowing for convenient disassembly and storage. Each LED shown in this example may be controlled separately in terms of tight intensity and color by a computer. Further shown within FIG. 12 for exemplary purposes is a Target Data Template, which is being used to show the strike zone above a plate and within that a preferred target area for a pitcher.

With respect to FIG. 14 , another example of the Target Display is shown, in this embodiment, the Target Display is showing that the last pitch was determined to have a speed of 63 mph.

With respect to FIG. 15 , an example of a Target Data 608 is shown. As shown, the Target Data 608 is based on a Target Display Template with five visually unique areas (ball zone, outer strike zone, and upper/middle/lower target zones within the outer strike zone). Further, Target Data 608 has been updated to show where termination points were determined to have occurred in relationship to the Target Display Template. For example, only one hit was recorded in the lower right portion of the inner/middle strike zone. As seen in FIG. 13 , Target Data 608 may also include a summary along a horizontal line for each row of the data array. In other embodiments, Target Data 608 may include other similar summaries, such as on a vertical line for each row of the data array.

With respect to FIG. 16 , another example of a Target Data 608 is shown. As shown, the Target Data 608 is based on a Target Display Template with four visually unique areas (ball zone, outer strike zone, middle strike zone, and inner strike zone).

With respect to FIG. 17 , another example of a Target Data 608 is shown. As shown, the Target Data 608 is based on a Target Display Template with eight visually unique areas. Though not shown in FIG. 17 , each of these regions may be color coded to represent how they appear on a Target Display. In this example, the purpose of such a Target Display template may be to teach how to throw to the corners of the strike zone. Accordingly, the area outside of the strike zones may be designated black (to indicate no light or color to be shown by the Target Display in those areas). The innermost strike zone area may be designated red (to indicate a red color to be shown by the Target Display in those areas), thereby discouraging aiming at that location. The corner strike zones may be designated green (to indicate a green color to be shown by the target Display in those areas), thereby encouraging aiming at that location. Finally, the two vertical strike zone areas between the strike zone corners may be designated yellow (to indicate a yellow color to be shown by the Target Display in those areas), thereby showing that aiming at that location is acceptable.

With respect to FIG. 18 , an example of multiple User Records is shown. In this embodiment, the system may display the User Records according to Personal information 602 and Status/Relationships information 604. For example, for the record associated with student Matt, his personal information may be shown, in addition, the personal information from the records of his coaches and instructors may be shown. Another example of this is shown, in FIG. 19 , except in this example a group of students and their personal information may be displayed, in connection with the personal information of instructors and coaches. Such a view may be displayed for example when a coach record is selected, rather than a student record.

With respect to FIG. 20 , an example of performance/analytics information is shown for a particular user. As shown in the example, the user record is for a student who has used four different Target Data Templates (Early Development, Intermediate, Select Development, Pitchers Advantage). Based on the user's record of hitting the target areas according to the Target Data in the User Record, a cumulative score of hits and misses can be calculated. In some embodiments, other parameters may be calculated from the Target Data, such as hit, near hit, and total miss.

With respect to FIG. 21 , another example of performance/analytics information is shown for a particular user. In this example, Target Data from different sessions (e.g., on different days) may be graphed over time to show improvement or lack thereof. For example, after every pitching session with a specific Target Data Template, a hit/miss ratio may be calculated as shown in FIG. 22 . These hit/miss ratios may then be shown over time, such as on a daily, weekly, or monthly basis, to show whether the user is improving or not.

With respect to FIG. 23 , an example is shown of how a Target Data Template may be constructed to form a Game Mode, in a Game Mode, a user may create a sequence of Data Templates corresponding to a particular pattern of throwing or hitting of an object that is desired. For example, baseball has an established lineup of batters, each of which may have an optimal strike zone that differs from one player to the next. A coach therefore may want to create a Game Mode that shows where the pitcher should throw from one batter to the next. As shown in FIG. 23 , an optimal target within the strike zone is shown for the batter Matty as indicated by the dark spot within the strike zone, in addition, other information may be associated with the Target Data Template to help a user understand the particular target. For example, a Target Data Template in a Game Mode created for a batter may include her position in the lineup, batting stance, preferred pitch type, etc. An example of this is also shown in FIG. 24 . This additional information may also be presented to the user via the Target Display or may be omitted.

A Game Mode may also include rules or conditions to help simulate realistic play. For example, depending on where a pitch is determined to hit on a Target Data Template, probabilities may be used to determine the result of the pitch (e.g., home run, player advances to first, pop-fly caught, ball, strike). Accordingly, the Game Mode may be used to simulate the effect of a game (e.g., 2 strikes, 4 balls, player walks, change to next Target Data Template) by using rules of probability to simulate a game based on the athlete's performance.

In addition, the Game Mode may be used to simulate the performance of a rival team pitcher based on another user's record. For example, once a pitcher strikes out three batters, he or she may rest while watching a simulation of how another user would perform against Target Data Templates representing batters on his or her own team. In such embodiments, the system may determine a probability of where a rival user may hit on the Target Data Templates and use that to simulate outcomes. Alternatively, as another example, two pitchers may compete against each other using two sets of Target Data Templates to represent their teams, until a game is over.

As another example of a Game Mode, the system may use probabilistic algorithms or patterns to create dynamic Target Data Templates. For example, the (lame Mode may display a wandering target within a strike zone with a dynamic Target Data Template. The more frequently the pitcher hits the target, the faster the wandering target may move.

In another embodiment, a Game Mode may use Target Data Templates where each Target Data Template specifies information and instructions relevant to the throwing or hitting of an object. For example, a Target Data Template may contain information relating to a virtual player, such as whether the virtual player is left-handed or right-handed, and the optimal type of pitch(es) fastball, curveball, screwball, changeup, drop) that should be thrown against such a virtual player. The system may then allow for Target Data Templates to be organized according, to sequence based on a group of virtual players, where each virtual player is assigned to a subset of Target Data Templates. For example, the Game Mode may present a batting order, where subsets of Target Data Templates are presented in accordance with the batting order. In Game Mode, the system may then randomly or deterministically select Target Data Templates associated with a particular batter until either the batter is struck out or the Game Mode determines a different outcome based on failed pitches. For example, if a pitch is not delivered correctly, the Game Mode may determine that a bit, strike, bunt, foul tip, home run, etc. may have occurred. In this manner, the Game Mode may progress as if simulating an actual game. Further, such simulation may be based on statistical models, of each virtual player that are based on the past or predicted performance of a real athlete. For instance, the Game Mode may determine there is a 25% chance that a ball with a particular speed that hits a particular location may result in a home run based on such statistical models of a real athlete. In some embodiments, even if the pitch is delivered correctly, the Game Mode may still determine an outcome based on a statistical model, thereby possibly increasing a sense of realism for an athlete.

As described above, Target Data Templates may be used by the system to present the, information relating to a virtual player (e.g., Left-Handed/Fastball) and may also present particular locations where an object, such as a baseball, should hit.

In some embodiments, a Game Mode may save the results from such a sequence of practice and also may perform statistical analysis. For example, the Game Mode may determine success ratios based on particular information relating to virtual players (e.g., success rate against left-handed batters). As another example, the Game Mode may determine success after a transition has occurred (e.g., success rate against a left-handed batter following a right-banded batter). Such results and statistical analysis may then be used by athletes or coaches to determine particular weaknesses, such as difficulties in throwing to a particular location, a particular type of pitch, transitioning from one situation to another, etc.

With respect to FIG. 25 , an example of a System 2500 for tracking objects is shown. In this embodiment, an Athlete 2502 may be pitching from a baseball mound in the direction of Home Plate 2506, Located behind Home Plate 2506 may be a Catching Net 2508, which may catch any pitch thrown near Home Plate 2506, Catching Net 2508 may comprise a frame and a net that stops the progress of a thrown ball. Located further behind Catching Net 2508 may be a Target Display 2510, which may display locations for the pitcher to throw at as described below. As an example, Target Display 2510 may be comprised of a display panel, such as a 75″ LED display with an optional transparent protective panel attached to or hanging in front of it (e.g., hanging on brackets from the frame of Catching Net 2508). On the top side of Catching Net 2508 may be Cameras 2512 and 2514, which may be located on or next to Catching Net 2508 to observe the trajectory of a ball thrown by Athlete 2502. For example, Cameras 2512 and 2.514 may be fisheye lens cameras mounted on the top of the frame of Catching Net 2508 that are able to observe the net of Catching Net 2508, the Target Display 2510, or the area in front of Catching Net 2508 (e.g., up to 10 feet). In some embodiments, Cameras 2516 and 2518 may be mounted or placed near Catching Net 2508 to observe the perspective of a ball thrown from a right-handed or left-handed batter position. For example, Cameras 2516 and 2518 may be mounted 66″ up on the frame of Catching Net 2508 and aimed toward the pitching area. In addition, some embodiments may have a Radar Tracking Device 2520 to track the speed of a thrown ball. For example, Radar Tracking Device 2520 may be located behind and at the bottom of a transparent panel protecting Target Display 2510.

Computer 114 may instruct Target Display 2510 to display a target showing areas that Athlete 102 should throw at, Computer 114 may then observe the performance of the athlete by tracking an object thrown toward Target Display 2510, such as a baseball, via Cameras 2512, 2514, 2516 and 2518 or Radar Tracking Device 2520. Based on the trajectory of the thrown object as recorded via Cameras 2512, 2514, 2516 and 2518 or Radar Tracking Device 2520, Computer 114 may determine the speed of the thrown object and a termination point where the trajectory of the object changes abruptly. Further, Computer 114 may determine the location of the termination point relative to visually distinct areas presented by Target Display 110. This may then be recorded into a data array by Computer 114, thereby allowing for the tracking of where objects have been repeatedly thrown by the athlete.

System 2500 may be used with any of the methods and systems described herein. In addition, System 2500 or other systems described herein may use the information obtained from cameras or a radar tracking devices to perform the method 2600 as shown in FIG. 26 .

At Step 2610, the system may be initialized to observe a thrown object as described herein, including the display of a target location. At step 2620 camera and radar devices may detect the throwing of an object and may determine its trajectory, speed, and impact location. For example, the camera or radar device may detect the speed of a high-speed thrown object, thereby indicating to the system that a pitch has been thrown. At step 2630, the information from the camera or radar devices may be used to determine where the thrown object crossed the plate or impacted a net. In addition, the camera or radar devices may be used to determine the speed at which the thrown object arrived at the plate or the net. At step 2640, the result of the impact may be displayed, such as on a target display or a handheld device. At step 2650, measurements from the estimated center of thrown object to center of target location may be displayed. For example, measurements in this instance or discussed otherwise may be given in inches or centimeters in vertical, horizontal, or diagonal dimensions. At step 2660, the distance between any two thrown objects at a point of interest may be displayed. For example, measurements may be given in inches or centimeters in vertical, horizontal, or diagonal dimensions, such as between a current pitch and a previous pitch.

At step 2670, Effective Velocity of a thrown of relative to an observer may be calculated and may be displayed. Methods and systems for calculating the Effective Velocity of a thrown object relative to an observer are well known in the art and are described for example in U.S. Provisional Patent Application No. 60/601,148, U.S. Pat. Nos. 7,575,526, 8,152,658, and 8,535,180, the entireties of which are hereby incorporated herein by reference. Accordingly, in some embodiments, the Effective Velocity of a pitch may be determined based on the selection of the perspective or location of a left.-handed or right-handed batter.

At step 2680, determinations of whether a thrown object was a ball, strike, success, miss, executed, or not executed may be made. Further, determinations may be made based as to the type of throw, such as pitch type (e.g., fastball, cure ball, changeup). This determination may be made based on the type of throw instructed to be performed or observed. In addition, charts may be generated and displayed to summarize a series of thrown objects (e.g., Balls and Strikes: Success and Misses; Executed Pitches). These charts may also be distinguished by type of throw, such as pitch type and displayed accordingly. Moreover, charts comparing thrown objects only by type of throw (e.g., pitch type) in general may also be generated and displayed.

With respect to FIG. 27 , another method 2700 that may be used is shown. At step 2710, cameras (such as Cameras 2508 and 2510) may be used to capture the windup and release of the pitch from the perspective of a left-handed batter, a right-handed batter, or both. At step 2720, such cameras may also record the flight path of the ball from the release of the pitch to the impact location. At step 2730, the windup, release, or flight path of the ball may be displayed on a handheld device or a target display. At step 2740, the trajectory of one or more balls in the video may be displayed. In some embodiments, the trajectory may also allow for information describing the distance between them. For example, if two trajectories are displayed then vertical, horizontal, or diagonal measurements may be shown between them. Alternatively, a user may select two or more trajectories and receive vertical, horizontal, or diagonal measurements between them, in addition, the user may select comparison between trajectories based on time, distance, height, or other metrics of interest in comparing the distance between points in two or more trajectories.

With respect to FIG. 28 , a method 2800 is shown for encouraging deception in pitching. At step 2810, an observer position is chosen. For example, the user may select right-handed or left-handed batter for a pitch. Alternatively, an algorithm or a modifiable sequence of positions (e.g., a simulated batting lineup of right-handed and left-handed batters) may select a position tor each throwing of an object. At step 2820, a target location may be designated, which may also include the type of pitch or throwing to be used. In designating, the target or pitching/throwing type, an algorithm may select options to maximize deception based on the observer position. For example, based on a prior pitch an algorithm may recommend a pitch at a similar target, but with a different speed; a pitch at a different target, but at a similar speed; or a pitch that follows a similar trajectory to that of the prior pitch before substantially deviating. In addition, in determining a recommended pitch, the algorithm may take into account the expected Effective Velocity of the recommended pitch in comparison with the calculated Effective Velocity of the prior pitch. For example, if the Effective Velocity of a fastball based on a right-handed batter perspective was 91 mph when thrown up and in, then the algorithm may recommend a slider at an Effective Velocity of 85 mph or a changeup at an Effective Velocity of 75 mph to a similar target location.

To aid the algorithm in making recommendations, pitches may be categorized based on type, target location, observer position, desired actual velocity, desired Effective Velocity, or other characteristics. In addition, probabilities may be assigned for each category of pitch, such that some pitches are more likely to be selected than others given one or more prior pitches and may also be further adjusted based on their outcomes (e.g., strike, ball, success, miss, executed, not executed). Also, the probabilities may be further adjusted to match the capabilities of the pitcher. For example, pitches may be removed or added to suit the skill of the pitcher. In addition, desired actual velocity or desired Effective Velocity may be adjusted to suit the throwing speed of the pitcher, which may be a static change or a dynamic change (e.g., if the pitcher's throwing speed is diminishing from fatigue).

At step 2830, once the recommended pitch is thrown, the trajectory and impact location may be analyzed to determine a deception score. Deviations from the recommended speed, trajectory, and target location may be weighted and normalized to give a range of deception (e.g., 0 being the lowest and 1 being the highest). For example, mathematical formulas (e.g., (actual value−minimum desired value/(maximum desired value−minimum desired value)) based on deviation from the recommended speed, trajectory, or target location may be provided to calculate a deviation score. In some embodiments, multiple deviation scores may be calculated, presented, and relied on in methods described herein, such as individual deviation scores for speed, trajectory, or target location.

Further, at the end of a sequence of pitches, a chart may be shown showing maximum deception, minimum deception, average deception, or a list of deception scores. As a further part of the algorithm described in step 2820, deception scores may be saved and used to modify the probabilities assigned to pitch recommendations. For example, recommended pitches may be adjusted probabilistically to avoid or prefer pitch sequences that have resulted in low deception scores. In this manner, a pitcher may train for a game in a manner that seeks to avoid low deception scores, then after the game switch to training in patterns involving troublesome pitch combinations to improve.

With respect to FIG. 29 , an example of a chart showing halls and strikes is shown. In such an embodiment, colors may be utilized to distinguish between positive and negative results.

With respect to FIG. 30 , an example of a chart showing successes and misses is shown. In such an embodiment, colors may be utilized to distinguish between positive and negative results.

With respect to FIG. 31 , an example of a chart showing executed and not executed is shown. In such an embodiment, colors may be utilized to distinguish between positive and negative results.

With respect to FIG. 32 , an example of a chart showing pitches categorized by Curve Ball is shown. In such an embodiment, colors may be utilized to distinguish between positive and negative results.

With respect to FIG. 33 , an example of a chart showing pitches categorized by Fast Ball is shown. In such an embodiment, colors may be utilized to distinguish between positive and negative results.

With respect to FIG. 34 , an example of a chart is shown showing the difference in speed between two pitches and the distance that the slower pitch would be behind the faster pitch when the faster pitch arrived at the target location, in some embodiments, the velocity shown may be actual velocity or Effective Velocity.

With respect to FIG. 35 , an example of a chart is shown showing the difference in vertical, horizontal, and diagonal height between two pitches.

While particular embodiments and applications of the present invention have been illustrated and described, it is to be understood that the invention is not limited to the precise construction and compositions disclosed herein and that various modifications, changes, and variations can be apparent from the foregoing descriptions without departing from the spirit and scope of the invention as defined in the appended claims. 

What is claimed is:
 1. A system for monitoring objects thrown or bit by an athlete comprising: an electronic display, wherein the electronic display contains an arrangement of light-emitting devices for displaying targets to the athlete; one or more cameras, wherein at least one camera is positioned to observed the electronic display and wherein at least one other camera is positioned for observing an object thrown or bit toward the electronic display; and a computer coupled to the electronic display and the one or more cameras, wherein the computer uses video from the one or more cameras to determine relative to the electronic display where an object is thrown or hit and calculates the effective velocity of the object based on a selected perspective. 